/*
 * Scheduler.h
 *
 *  Created on: 2024年3月23日
 *      Author: Administrator
 */

#ifndef USER_SCHEDULER_H_
#define USER_SCHEDULER_H_

#include <stdint.h>

#define TICK_PER_SECOND 1000
#define TICK_US (1000000 / TICK_PER_SECOND)

typedef struct
{
    void (*task_func)(void);
    uint16_t rate_hz;
    uint16_t interval_ticks;
    uint32_t last_run;
} sched_task_t; // 任务结构体

void SchedulerSysTickHandler(void);
void Scheduler_Setup(void);
void Scheduler_Run(void);

#endif /* USER_SCHEDULER_H_ */
